<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        var arr = [5,4,3,2,1] ;

        // 思路：
        //    直接找到最小的值，与第一个位置上的值进行交换
        //    找到第二小的值，与第二个位置上的值进行交换


        // 5 4 3 2 1

        // 第一轮:找最小的值
        // 假设第一个位置上的值最小
        var min = 0 ;   // 这个变量始终存储最小的那个值的下标
        // 与后面所有的数进行比较
        for(var i = 1 ; i < arr.length ; i++) {
            // 拿这个最小的值，与后面的值进行比较
            if(arr[min] > arr[i]) {
                min = i ;
            }
        }
        console.log(min);  // 下标

        var temp = arr[0] ;
        arr[0] = arr[min] ;
        arr[min] = temp ;

        console.log(arr);

        // 5 4   min=1
        // 4 3   min=2
        // 3 2   min=3
        // 2 1   min=4

        // 第一轮结束  1 4 3 2 5


        // 第二轮
        //   假设第二个位置上的数第二小
        var min = 1 ;
        for(var i = 2 ; i < arr.length ; i++) {
            if(arr[min] > arr[i]) {
                min = i ;
            }
        }
        console.log(min) ;

        // 与第二个位置上的数进行交换
        var temp = arr[1] ;
        arr[1] = arr[min] ;
        arr[min] = temp ;

        console.log(arr);

        // 第二轮结束   1 2 3 4 5  


        // 第三轮     找到第三小的

        // 第四轮     找到第4小的



        // 5个数  4轮就可以必出结果

        var arr = [5,4,3,2,1] ;
        for(var j = 0 ; j < arr.length - 1 ; j++) {    // 比较的轮数
            // 每一轮都找一个最小值
            var min = j ;
            // 与后面的值进行比较
            for(var i = j + 1 ; i < arr.length ; i++) {
                if(arr[min] > arr[i]) {
                    min = i ;
                }
            }

            // 循环结束之后   min会保留最小的值的下标

            // 如果假设第一个位置上的值最小，结果他真的是最小的，就不需要交换
            if(min !== j) {
                // 最小值与假设的位置进行交换
                var temp = arr[j] ;
                arr[j] = arr[min] ;
                arr[min] = temp ;
            }
            
        }


        console.log(arr);



    </script>
    
</body>
</html>